# 第一阶段：构建阶段
FROM maven:3.8-openjdk-17 AS builder
# 或者使用更简单的标签
# FROM maven:3.8-jdk-17 AS builder

# 设置工作目录
WORKDIR /app

# 复制 pom.xml 和源代码
COPY ../pom.xml .
COPY ../src ./src

# 构建应用
RUN mvn clean package -DskipTests

# 第二阶段：运行阶段
FROM openjdk:17-jdk-slim-buster
# 或者使用
# FROM eclipse-temurin:17-jdk-jammy

# 设置工作目录
WORKDIR /app

# 从构建阶段复制生成的 jar 文件
COPY --from=builder /app/target/*.jar app.jar

# 暴露应用端口
EXPOSE 8081

# 设置时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

# 创建存储目录
RUN mkdir -p /app/torent/storage

# 启动应用
ENTRYPOINT ["java", "-jar", "app.jar"]